package br.upe.portlet.estagio.service;

import com.liferay.portal.PortalException;
import com.liferay.portal.SystemException;
import com.liferay.portal.kernel.annotation.Propagation;
import com.liferay.portal.kernel.annotation.Transactional;


/**
 * <a href="SolicitacaoEstagioLocalService.java.html"><b><i>View Source</i></b></a>
 *
 * <p>
 * ServiceBuilder generated this class. Modifications in this class will be
 * overwritten the next time is generated.
 * </p>
 *
 * <p>
 * This interface defines the service. The default implementation is
 * <code>br.upe.portlet.estagio.service.impl.SolicitacaoEstagioLocalServiceImpl</code>.
 * Modify methods in that class and rerun ServiceBuilder to populate this class
 * and all other generated classes.
 * </p>
 *
 * <p>
 * This is a local service. Methods of this service will not have security checks based on the propagated JAAS credentials because this service can only be accessed from within the same VM.
 * </p>
 *
 * @author Brian Wing Shun Chan
 *
 * @see br.upe.portlet.estagio.service.SolicitacaoEstagioLocalServiceUtil
 *
 */
@Transactional(rollbackFor =  {
    PortalException.class, SystemException.class}
)
public interface SolicitacaoEstagioLocalService {
    public br.upe.portlet.estagio.model.SolicitacaoEstagio addSolicitacaoEstagio(
        br.upe.portlet.estagio.model.SolicitacaoEstagio solicitacaoEstagio)
        throws com.liferay.portal.SystemException;

    public br.upe.portlet.estagio.model.SolicitacaoEstagio createSolicitacaoEstagio(
        long codigo);

    public void deleteSolicitacaoEstagio(long codigo)
        throws com.liferay.portal.SystemException,
            com.liferay.portal.PortalException;

    public void deleteSolicitacaoEstagio(
        br.upe.portlet.estagio.model.SolicitacaoEstagio solicitacaoEstagio)
        throws com.liferay.portal.SystemException;

    public java.util.List<Object> dynamicQuery(
        com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
        throws com.liferay.portal.SystemException;

    public java.util.List<Object> dynamicQuery(
        com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
        int end) throws com.liferay.portal.SystemException;

    @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
    public br.upe.portlet.estagio.model.SolicitacaoEstagio getSolicitacaoEstagio(
        long codigo)
        throws com.liferay.portal.SystemException,
            com.liferay.portal.PortalException;

    @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
    public java.util.List<br.upe.portlet.estagio.model.SolicitacaoEstagio> getSolicitacaoEstagios(
        int start, int end) throws com.liferay.portal.SystemException;

    @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
    public int getSolicitacaoEstagiosCount()
        throws com.liferay.portal.SystemException;

    public br.upe.portlet.estagio.model.SolicitacaoEstagio updateSolicitacaoEstagio(
        br.upe.portlet.estagio.model.SolicitacaoEstagio solicitacaoEstagio)
        throws com.liferay.portal.SystemException;

    @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
    public java.util.List<br.upe.portlet.estagio.model.SolicitacaoEstagio> getSolicitacoesEstagioByProfessorMatricula(
        java.lang.String professorMatricula, boolean somenteNaoVerificadas,
        int start, int end) throws com.liferay.portal.SystemException;

    public int countSolicitacoesEstagioByProfessorMatricula(
        java.lang.String professorMatricula, boolean somenteNaoVerificadas)
        throws com.liferay.portal.SystemException;

    @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
    public java.util.List<br.upe.portlet.estagio.model.SolicitacaoEstagio> getSolicitacoesEstagioNotVerifiedByProfessorMatricula(
        java.lang.String professorMatricula, int start, int end)
        throws com.liferay.portal.SystemException;

    public int countSolicitacoesEstagioNotVerifiedByProfessorMatricula(
        java.lang.String professorMatricula)
        throws com.liferay.portal.SystemException;
}
